from PropertyError import AgeError
from PropertyError import ClassNameError

"""
定义 Student 类，初始化时定义学生姓名、年龄、班级、手机号等属性
（1）定义 check_age 方法，验证学生年龄是否小于18，若小于18则抛出异常，
    提示"你的年龄设置错误，请重新添加信息"
（2）定义 check_class 方法，验证输入班级，已有班级为"一班"、“二班”、“三班”，
    若输入班级不是"一班"、“二班”、“三班"其中一个，
    则抛出异常，提示"暂无此班级，请重新添加信息”
"""


class Student:
    def __init__(self, name, age, class_name, phone):
        self.name = name
        self.class_name = class_name
        self.age = age
        self.phone = phone
        self.check_age()
        self.check_class()

    def check_age(self):
        if self.age < 18:
            raise AgeError("你的年龄设置错误，请重新添加信息")

    # 检查
    def check_class(self):
        valid_classes = ["一班", "二班", "三班"]
        if self.class_name not in valid_classes:
            raise ClassNameError("暂无此班级，请重新添加信息")
